iT邦幫忙

DAY 4
1

從想法到快速實作的捷徑:Rails系列 第 4

[ Day 4 ] [ Planning ] 開始規劃 - User story

  • 分享至 

  • xImage
  •  

每個人開發都會有不一樣的步調,

希望能借由這篇自己的嘗試和搜集資料來拋磚引玉一下。

理想上來說,使用者會很清楚知道自己想要用一個什麼樣的產品(這裡就是網站),

不過現實生活中卻不盡然。

所以我們這次會觀察粉絲專頁的小編(?)發文的方式、內容,

以及其他行為來取捨要做哪些功能,最後才是真正的去寫code,

(可以想像成自己正在寫比較有架構的pseudo code。)

首先先取一整篇PO文來看:

United Issue / 世界大代誌
【西媒】我無法早起吃早餐,很嚴重嗎?

全世界的人們大概可以分為起床後一口早餐也不吃以及若未飽餐一頓絕不出門的人。您是屬於哪一群呢?不管你站在哪邊,可以 確定的是隨著時間過去,大眾普遍的觀念與科學實驗已經達到某種共識,若我們想維持強壯並健康的身體,一天當中的第一餐非常> 重要。

但是,我們可以毫不畏懼犯錯的確定,早餐是一天當中最重要的一餐的觀念正確無誤嗎?若是這樣的話,是否一份均衡、完整的早餐是健康生活的必需品呢?可以確定的是.....(以下略)

附註:強迫進食症

http://www.mirror-mirror.org/compulsive.htm

#西班牙 #飲食 #早餐 #強迫進食症

新聞、圖片來源:http://elpais.com/elpais/2014/09/09/buenavida/1410259913_334694.html

來源時間 9 SEP 2014 17:21 CEST

翻譯者:卡洛斯

看完之後並不是要寫心得報告,所以內容晚點再看,

初步看的出來接觸到這個網站的應該會有三種角色:

  1. 小編(管理員)
  2. 翻譯者(內容提供者
  3. 粉絲(一般使用者)

1和2使用的功能在後台實作時會有相當大的重複,

到時候會用一個叫做CanCanCan的gem來做權限管理。

3就很直觀的是使用者。

這樣做的好處是什麼呢?

後續如果要增加收藏活動功能,或者是討論區之類的東西,

我們都很明確的可以區分誰要這些功能,還有誰的權限能到哪裡,

舉例來說:

  • 收藏功能是專門給一般使用者的
  • 使用者不能刪除新聞
  • 管理員可以決定發文的排程

處理完「人」的問題後,我們在來看他們各會做哪些行為,

下面是一個簡化版的PO文:


United Issue / 世界大代誌
【西媒】我無法早起吃早餐,很嚴重嗎?

圖片

PO文內容

附註:強迫進食症
http://www.mirror-mirror.org/compulsive.htm

#西班牙 #飲食 #早餐 #強迫進食症

新聞、圖片來源:http://elpais.com/elpais/2014/09/09/buenavida/1410259913_334694.html

再繼續拆解會變成:


【媒體分類】 標題
圖片
Po文內容
附註

hash tag
新聞、圖片來源

所以我們可以開始寫翻譯的人在Po文時會做什麼了。

(扯遠了,我想應該有更正統的方式可以寫user story,但目前我是以自己理解的方式去寫,請多多包含)


以下用Admin代稱管理員、Interpreter來代稱譯者,Member代稱一般使用者:

Admin:

  • 管理文章

  • 排定時程

  • 決定哪些文章通過審核

  • 發文章

  • 包含媒體分類、標題、圖片、內容、附註、hash tag、資料來源、翻譯者名字

  • 看文章

  • 能看見目前所有的文章

  • 編輯文章

  • 能編輯__所有人__的文章

  • 會留下編輯記錄

  • 可以編輯的欄位包括媒體分類、標題、圖片、內容、附註、hash tag、資料來源

  • 刪除文章

  • 能刪除__所有人__的文章

Interpreter:

  • 發文章
  • 包含媒體分類、標題、圖片、內容、附註、hash tag、資料來源、翻譯者名字
  • 看文章
  • 能看見目前所有的文章
  • 編輯文章
  • 只能編輯__自己__的文章
  • 會留下編輯記錄
  • 可以編輯的欄位包括媒體分類、標題、圖片、內容、附註、hash tag、資料來源
  • 刪除文章
  • 只能刪除__自己__的文章

Member

  • 看文章
  • 只能看到通過管理者審核的文章
  • 回應文章

如此大概要做些什麼就清楚多了,

當要加上什麼新功能的時候也很簡單,

(這裡指的是規劃上,而不是說做出來,我最害怕聽到「這應該不難......吧?」這一句話了)

比如說我們要讓Member能夠評分,就會修改成

Member

  • 看文章
  • 只能看到通過管理者審核的文章
  • 回應文章
  • 評價文章
  • 能對每篇文章給1~10分

做每一件事情都用寫程式的方法去想,

如果我們把要做的事情模組化,那這樣要再新增東西上去也就不那麼難了,

前提是計劃如果有照著預先規劃的走XD


上一篇
[ Day 3 ][ Intro ] 為什麼要用Rails來開發?
下一篇
[ Day 5 ][ Setting ] Rails 環境設定
系列文
從想法到快速實作的捷徑:Rails30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言